|
Set packing is a classical NP-complete problem in computational complexity theory and combinatorics, and was one of Karp's 21 NP-complete problems. Suppose we have a finite set ''S'' and a list of subsets of ''S''. Then, the set packing problem asks if some ''k'' subsets in the list are pairwise disjoint (in other words, no two of them share an element). More formally, given a universe and a family of subsets of , a ''packing'' is a subfamily of sets such that all sets in are pairwise disjoint, and the size of the packing is . In the set packing decision problem, the input is a pair and an integer ; the question is whether there is a set packing of size or more. In the set packing optimization problem, the input is a pair , and the task is to find a set packing that uses the most sets. The problem is clearly in NP since, given ''k'' subsets, we can easily verify that they are pairwise disjoint in polynomial time. The optimization version of the problem, maximum set packing, asks for the maximum number of pairwise disjoint sets in the list. It is a maximization problem that can be formulated naturally as an integer linear program, belongs to the class of packing problems, and its dual linear program is the set cover problem. ==Integer linear program formulation== The maximum set packing problem can be formulated as the following integer linear program. x_S \leqslant 1 | for all | (selected sets have to be pairwise disjoint) |- | | | for all . | (every set is either in the set packing or not) |} 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「set packing」の詳細全文を読む スポンサード リンク
|